<?php

/**
 * SQLConfig
 * @package SQL
 * @author Jens Albrecht
 * @copyright 2012 Jens Albrecht
 */

class SQLConfig{
    
    private $CharSet           = "iso-8859-1";
    
    private $ServerName       = "WINSERVER";
    
    private $Username         = "MarketingUser";
        
    private $Password         = "th-wildau123";
    
    private $Database         = "Marketing";
/**
 * SQL Query die abgesetzt werden soll
 * @var String
 */
    public $Query             = "";
 /**
  * bildet dasObject der aktuellen DB Connection
  * @var Object
  */   
    public $Conn              = "";
    
    private $Response          = "";
    
    private $Anfrage           ="";
    
    private $ConnectionInfo   ="";


    //--------------------Funktionen--------------------------
    
    /**
     * Baut eine Verbindung zur Datenbank auf
     * 
     * @return String Gibt den Zustand der Verbindung zurück
     */
    public function SQL_Connect(){
        
        $this->connectionInfo = array( "UID"=> $this->Username,
                         "PWD"=> $this->Password,
                         "Database"=> $this->Database);
        
        $this->Conn = sqlsrv_connect($this->ServerName, $this->ConnectionInfo);
        
        if($this->Conn === false ){
            return "Unable to connect.</br>";}
        else { return "Alles Gut."; }
    }
    
    /**
     * Setzt die Query ab und fetched das ergebnis in einen Wert
     * 
     * @return string Gibt den Werd der Anfrage zurück
     */
    public function Get_Data() {  
        
        $this->ConnectionInfo = array( "UID"=> $this->Username,
                         "PWD"=> $this->Password,
                         "Database"=> $this->Database);
        
        $this->Conn = sqlsrv_connect($this->ServerName, $this->ConnectionInfo);
        
//        if($this->Conn === false ){
//            return "Unable to connect.</br>";}
//        else { return "Alles Gut."; }
        
        $this->Anfrage = sqlsrv_query($this->Conn, $this->Query);
        
        if($this->Anfrage === FALSE){return "Konnte die Query nicht absetzen!";}

        $this->Response = sqlsrv_fetch_array($this->Anfrage);
            
        return $this->Response;
        
        sqlsrv_close($this->Conn);
    }
    
    /**
     * Gibt einen Überblick über alle relevanten Parameter
     * 
     * @return String Gibt alle Connection Parameter zurück
     */
    public function All_Data(){
        return "Datenbank: $this->Database <br>Passwort: $this->Password <br>Benutzername: $this->Username <br>Query: $this->Query <br>Server: $this->ServerName";        
    }
    
    /**
     * Setzt eine Query ab und gibt das Ergebnis Arry zurück
     * 
     * @return Array Das Array beinhaltet alle SQL Elemente
     */   
    public function Get_Array() {  
        
        $this->ConnectionInfo = array( "UID"=> $this->Username,
                         "PWD"=> $this->Password,
                         "Database"=> $this->Database);
        
        $this->Conn = sqlsrv_connect($this->ServerName, $this->ConnectionInfo);
        
        $this->Anfrage = sqlsrv_query($this->Conn, $this->Query);
        
        if($this->Anfrage === FALSE){return "Konnte die Query nicht absetzen!";}

            
        return $this->Anfrage;
    }
    
    /**
     * Schließt die aktuelle Verbindung
     */
    public function Close(){
        sqlsrv_close($this->Conn);
    }
}
?>